﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Microsoft.Practices.ObjectBuilder;
using Bovespa.Infra.Web.Security;
using Bovespa.Infra.Web.UI;
using Bovespa.Sinacor.BaseConhecimento.Shell.Presenters;

/// <summary>
/// Classe publica de manipulacao da pagina Pesquisa.aspx
/// </summary>
public partial class Pesquisa : BovespaPage<PesquisaPresenter>, IPesquisa
{
    #region Campos

    #endregion

    #region Propriedades

    /// <summary>
    /// Retorna/Atribui valor para o presenter desta view.
    /// </summary>
    [CreateNew]
    public override PesquisaPresenter Presenter
    {
        get { return this.BasePresenter; }
        set
        {
            this.BasePresenter = value;
            this.BasePresenter.View = this;
        }
    }

    #endregion

    #region Eventos

    /// <summary>
    /// Inicializa informacoes da Pesquisa, fazendo chamada ao presenter.
    /// </summary>
    /// <remarks>
    /// Este metodo e chamado automaticamente na primeira vez (apenas!) 
    /// que a Pesquisa e carregada.
    /// </remarks>
    protected override void InitializeView()
    {
        this.Presenter.OnViewInitialized();
    }

    /// <summary>
    /// Carrega informacoes iniciais da View e faz chamada ao presenter 
    /// </summary>
    /// <remarks>
    /// Este metodo e executado automaticamente toda vez que a Pesquisa (Pagina)
    /// e carregada.
    /// </remarks>
    protected override void LoadView()
    {
        this.Presenter.OnViewLoaded();
    }

    #endregion

    protected void BtnPesquisar_Click(object sender, EventArgs e)
    {
        if(!string.IsNullOrEmpty(this.TxtPesquisar.Text))
            Response.Redirect(string.Format("ResultadoPesquisa.aspx?termo={0}&pagina={1}", this.TxtPesquisar.Text, 1));
        else
            this.ShowMessage("Termo de pesquisa não informado!");
    }

    #region Metodos Privados

    #endregion

    #region IPesquisa Members

    #endregion
}


